#region Using
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
#endregion Using

namespace CY.GFive.Core.Business
{
	public class StdAttendance : Business.BusinessBase<StdAttendance, int>
	{
		#region Fields and Properties

		private int term = 0;
		/// <summary>
		/// 
		/// </summary>
		public int Term
		{
			get { return term; }
			set
			{
				if (value != term)
				{
					MarkChanged("Term");
					term = value;
				}
			}
		}

		private int week = 0;
		/// <summary>
		/// 
		/// </summary>
		public int Week
		{
			get { return week; }
			set
			{
				if (value != week)
				{
					MarkChanged("Week");
					week = value;
				}
			}
		}

		private String operatorCode = String.Empty;
		/// <summary>
		/// 
		/// </summary>
		public String OperatorCode
		{
			get { return operatorCode; }
			set
			{
				if (value != operatorCode)
				{
					MarkChanged("OperatorCode");
					operatorCode = value;
				}
			}
		}

		private DateTime entryDate = DateTime.MinValue;
		/// <summary>
		/// 
		/// </summary>
		public DateTime EntryDate
		{
			get { return entryDate; }
			set
			{
				if (value != entryDate)
				{
					MarkChanged("EntryDate");
					entryDate = value;
				}
			}
		}

		private String yearNum = String.Empty;
		/// <summary>
		/// 
		/// </summary>
		public String YearNum
		{
			get { return yearNum; }
			set
			{
				if (value != yearNum)
				{
					MarkChanged("YearNum");
					yearNum = value;
				}
			}
		}

		private String des = String.Empty;
		/// <summary>
		/// 
		/// </summary>
		public String Des
		{
			get { return des; }
			set
			{
				if (value != des)
				{
					MarkChanged("Des");
					des = value;
				}
			}
		}

		private Decimal atndRate = 0.0m;
		/// <summary>
		/// 
		/// </summary>
		public Decimal AtndRate
		{
			get { return atndRate; }
			set
			{
				if (value != atndRate)
				{
					MarkChanged("AtndRate");
					atndRate = value;
				}
			}
		}

		private int realAttendance = 0;
		/// <summary>
		/// 
		/// </summary>
		public int RealAttendance
		{
			get { return realAttendance; }
			set
			{
				if (value != realAttendance)
				{
					MarkChanged("RealAttendance");
					realAttendance = value;
				}
			}
		}

		private int shouldAttendance = 0;
		/// <summary>
		/// 
		/// </summary>
		public int ShouldAttendance
		{
			get { return shouldAttendance; }
			set
			{
				if (value != shouldAttendance)
				{
					MarkChanged("ShouldAttendance");
					shouldAttendance = value;
				}
			}
		}

		private int leaveCate = 0;
		/// <summary>
		/// 
		/// </summary>
		public int LeaveCate
		{
			get { return leaveCate; }
			set
			{
				if (value != leaveCate)
				{
					MarkChanged("LeaveCate");
					leaveCate = value;
				}
			}
		}

		private int times = 0;
		/// <summary>
		/// 
		/// </summary>
		public int Times
		{
			get { return times; }
			set
			{
				if (value != times)
				{
					MarkChanged("Times");
					times = value;
				}
			}
		}

		private String classCode = String.Empty;
		/// <summary>
		/// 
		/// </summary>
		public String ClassCode
		{
			get { return classCode; }
			set
			{
				if (value != classCode)
				{
					MarkChanged("ClassCode");
					classCode = value;
				}
			}
		}

		#endregion Fields and Properties

		#region Constructors

		public StdAttendance()
		{
		}

		#endregion Constructors

		#region Base overrides

		protected override void ValidationRules()
		{
		}

		protected override StdAttendance DataSelect(int id)
		{
			return Services.DALService.StdAttendanceService.Select(id);
		}

		protected override void DataUpdate()
		{
			Services.DALService.StdAttendanceService.Update(this);
		}

		protected override void DataInsert()
		{
			Services.DALService.StdAttendanceService.Insert(this);
		}

		protected override void DataDelete()
		{
			Services.DALService.StdAttendanceService.Delete(this);
		}

		#endregion Base overrides
	}
}
